package be.lioche.soupe;

import java.util.ArrayList;
import java.util.List;

import org.bukkit.Bukkit;
import org.bukkit.Material;
import org.bukkit.entity.Player;
import org.bukkit.event.Listener;
import org.bukkit.inventory.Inventory;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta;

public class Shop implements Listener{

	public static Main plugin;
	public Shop(Main main) {
		Shop.plugin = main;
	}


	public static void openshop(Player p){

		final Inventory choixkit = Bukkit.createInventory(null, 9, "[§4Boutique§r] "+plugin.getConfig().getInt(p.getName()+".Coins")+" coins");

		final ItemStack defaut = new ItemStack(Material.IRON_SWORD);
		final ItemStack flash = new ItemStack(Material.REDSTONE_TORCH_ON);
		final ItemStack freezer = new ItemStack(Material.SNOW_BALL);
		final ItemStack terroriste = new ItemStack(Material.TNT);

		final ItemMeta defautmeta = defaut.getItemMeta();
		final ItemMeta flashmeta = flash.getItemMeta();
		final ItemMeta freezermeta = freezer.getItemMeta();
		final ItemMeta terroristemeta = terroriste.getItemMeta();

		defautmeta.setDisplayName("§f[§cDéfaut'kit§f]");
		flashmeta.setDisplayName("§f[§cFlash'kit§f]");
		freezermeta.setDisplayName("§f[§cFreezer'kit§f]");
		terroristemeta.setDisplayName("§f[§cTerro'kit'§f]");


		/*------------------------------------------------DEFAUT--------------------------------------------*/

		final List <String> defautlore1 = new ArrayList<String>();
		defautlore1.add("");
		defautlore1.add("§f§nNiveau actuel:§r§f (§c1§f)");
		defautlore1.add("");
		defautlore1.add("§fSpeed: §c0.20");
		defautlore1.add("§fÉpée: §cIron");
		defautlore1.add("§fEnderpearls: §c15");
		defautlore1.add("");
		defautlore1.add("§f§nNiveau suivant:§r§f (§c2§f)");
		defautlore1.add("");
		defautlore1.add("§fSpeed: §c0.25");
		defautlore1.add("§fÉpée: §cIron Sharp. I");
		defautlore1.add("§fEnderpearls: §c15");
		defautlore1.add("");
		defautlore1.add("§f§oPrix: §c§o100");


		final List <String> defautlore2 = new ArrayList<String>();
		defautlore2.add("");
		defautlore2.add("§f§nNiveau actuel:§r§f (§c2§f)");
		defautlore2.add("");
		defautlore2.add("§fSpeed: §c0.25");
		defautlore2.add("§fÉpée: §cIron Sharp. I");
		defautlore2.add("§fEnderpearls: §c15");
		defautlore2.add("");
		defautlore2.add("§f§nNiveau suivant:§r§f (§cMAX§f)");
		defautlore2.add("");
		defautlore2.add("§fSpeed: §c0.25");
		defautlore2.add("§fÉpée: §cIron Sharp I");
		defautlore2.add("§fStuff: §cIron Protect. I");
		defautlore2.add("§fEnderpearls: §c15");
		defautlore2.add("");
		defautlore2.add("§f§oPrix: §c§o150");



		final List <String> defautlore3 = new ArrayList<String>();
		defautlore3.add("");
		defautlore3.add("§f§nNiveau actuel:§r§f (§cMAX§f)");
		defautlore3.add("");
		defautlore3.add("§fSpeed: §c0.25");
		defautlore3.add("§fÉpée: §cIron Sharp I");
		defautlore3.add("§fStuff: §cIron Protect. I");
		defautlore3.add("§fEnderpearls: §c15");



		/*----------------------------------------------FLASH-----------------------------------------*/


		final List <String> flashlore1 = new ArrayList<String>();
		flashlore1.add("");
		flashlore1.add("§f§nNiveau actuel:§r§f (§c1§f)");
		flashlore1.add("");
		flashlore1.add("§fSpeed: §c0.25");
		flashlore1.add("§fÉpée: §cIron");
		flashlore1.add("§fEnderpearls: §c15");
		flashlore1.add("§fCasque: §cSpacial Protect. VI");
		flashlore1.add("");
		flashlore1.add("§f§nNiveau suivant:§r§f (§c2§f)");
		flashlore1.add("");
		flashlore1.add("§fSpeed: §c0.30");
		flashlore1.add("§fÉpée: §cIron Knock I");
		flashlore1.add("§fEnderpearls: §c20");
		flashlore1.add("§fCasque: §cSpacial Protect. VI");
		flashlore1.add("");
		flashlore1.add("§f§oPrix: §c§o150");
		flashlore1.add("");

		final List <String> flashlore2 = new ArrayList<String>();
		flashlore2.add("");
		flashlore2.add("§f§nNiveau actuel:§r§f (§c2§f)");
		flashlore2.add("");
		flashlore2.add("§fSpeed: §c0.30");
		flashlore2.add("§fÉpée: §cIron Knock I");
		flashlore2.add("§fEnderpearls: §c20");
		flashlore2.add("§fCasque: §cSpacial Protect. VI");
		flashlore2.add("");
		flashlore2.add("§f§nNiveau suivant:§r§f (§cMAX§f)");
		flashlore2.add("");
		flashlore2.add("§fSpeed: §c0.35");
		flashlore2.add("§fEnderpearls: §c25");
		flashlore2.add("§fÉpée: §cIron Knock I");
		flashlore2.add("§fCasque: §cSpacial Protect. VI");
		flashlore2.add("");
		flashlore2.add("§f§oPrix: §c§o200");
		flashlore2.add("");

		final List <String> flashlore3 = new ArrayList<String>();
		flashlore3.add("");
		flashlore3.add("§f§nNiveau actuel:§r§f (§cMAX§f)");
		flashlore3.add("");
		flashlore3.add("§fSpeed: §c0.35");
		flashlore3.add("§fÉpée: §cIron Knock I");
		flashlore3.add("§fEnderpearls: §c25");
		flashlore3.add("§fCasque: §cSpacial Protect. VI");
		flashlore3.add("");
		
		final List <String> flashloreno = new ArrayList<String>();
		flashloreno.add("");
		flashloreno.add("§f§nNiveau actuel:§r§f (§cAucun§f)");
		flashloreno.add("");
		flashloreno.add("§fTu dois d'abord acheter le kit !");
		flashloreno.add("");
		flashloreno.add("§f§nNiveau suivant:§r§f (§c1§f)");
		flashloreno.add("");
		flashloreno.add("§fSpeed: §c0.25");
		flashloreno.add("§fÉpée: §cIron");
		flashloreno.add("§fEnderpearls: §c15");
		flashloreno.add("§fCasque: §cSpacial Protect. VI");
		flashloreno.add("");

		/*----------------------------------------------FREEZER-----------------------------------------*/

		final List <String> freezerlore1 = new ArrayList<String>();
		freezerlore1.add("");
		freezerlore1.add("§f§nNiveau actuel:§r§f (§c1§f)");
		freezerlore1.add("");
		freezerlore1.add("§fSpeed: §c0.15");
		freezerlore1.add("§fÉpée: §cIron");
		freezerlore1.add("§fEnderpearls: §c10");
		freezerlore1.add("§fFlèches: §c10 (+5/kill)");
		freezerlore1.add("");
		freezerlore1.add("§f§nNiveau suivant:§r§f (§c2§f)");
		freezerlore1.add("");
		freezerlore1.add("§fSpeed: §c0.20");
		freezerlore1.add("§fÉpée: §cIron");
		freezerlore1.add("§fEnderpearls: §c10");
		freezerlore1.add("§fFlèches: §c15 (+5/kill)");
		freezerlore1.add("§fBottes: §cDiams");
		freezerlore1.add("");
		freezerlore1.add("§f§oPrix: §c§o200");
		freezerlore1.add("");

		final List <String> freezerlore2 = new ArrayList<String>();
		freezerlore2.add("");
		freezerlore2.add("§f§nNiveau actuel:§r§f (§c2§f)");
		freezerlore2.add("");
		freezerlore2.add("§fSpeed: §c0.20");
		freezerlore2.add("§fÉpée: §cIron");
		freezerlore2.add("§fEnderpearls: §c10");
		freezerlore2.add("§fFlèches: §c15 (+5/kill)");
		freezerlore2.add("§fBottes: §cDiams");
		freezerlore2.add("");
		freezerlore2.add("§f§nNiveau suivant:§r§f (§cMAX§f)");
		freezerlore2.add("");
		freezerlore2.add("§fSpeed: §c0.20");
		freezerlore2.add("§fÉpée: §cDiams");
		freezerlore2.add("§fEnderpearls: §c10");
		freezerlore2.add("§fFlèches: §c20 (+5/kill)");
		freezerlore2.add("§fArc: §cPower. I");
		freezerlore2.add("§fBottes: §cDiams");
		freezerlore2.add("");
		freezerlore2.add("§f§oPrix: §c§o250");
		freezerlore2.add("");

		final List <String> freezerlore3 = new ArrayList<String>();
		freezerlore3.add("");
		freezerlore3.add("§f§nNiveau actuel:§r§f (§cMAX§f)");
		freezerlore3.add("");
		freezerlore3.add("§fSpeed: §c0.20");
		freezerlore3.add("§fÉpée: §cDiams");
		freezerlore3.add("§fEnderpearls: §c10");
		freezerlore3.add("§fFlèches: §c20 (+5/kill)");
		freezerlore3.add("§fArc: §cPower. I");
		freezerlore3.add("§fBottes: §cDiams Protect. II");
		freezerlore3.add("");
		
		final List <String> freezerloreno = new ArrayList<String>();
		freezerloreno.add("");
		freezerloreno.add("§f§nNiveau actuel:§r§f (§cAucun§f)");
		freezerloreno.add("");
		freezerloreno.add("§fTu dois d'abord acheter le kit !");
		freezerloreno.add("");
		freezerloreno.add("§f§nNiveau suivant:§r§f (§c1§f)");
		freezerloreno.add("");
		freezerloreno.add("§fSpeed: §c0.15");
		freezerloreno.add("§fÉpée: §cIron");
		freezerloreno.add("§fEnderpearls: §c10");
		freezerloreno.add("§fFlèches: §c10 (+5/kill)");
		freezerloreno.add("");
		
		/*----------------------------------------------TERRORISTE-----------------------------------------*/


		final List <String> terroristelore1 = new ArrayList<String>();
		terroristelore1.add("");
		terroristelore1.add("§f§nNiveau actuel:§r§f (§c1§f)");
		terroristelore1.add("");
		terroristelore1.add("§fSpeed: §c0.20");
		terroristelore1.add("§fÉpée: §cStone");
		terroristelore1.add("§fStuff: §cMail");
		terroristelore1.add("§fEnderpearls: §c10");
		terroristelore1.add("§fGrenades: §c10 (+2/kill)");
		terroristelore1.add("");
		terroristelore1.add("§f§nNiveau suivant:§r§f (§c2§f)");
		terroristelore1.add("");
		terroristelore1.add("§fSpeed: §c0.25");
		terroristelore1.add("§fÉpée: §cIron");
		terroristelore1.add("§fStuff: §cMail Protect. I");
		terroristelore1.add("§fEnderpearls: §c15");
		terroristelore1.add("§fGrenades: §c15 (+2/kill)");
		terroristelore1.add("");
		terroristelore1.add("§f§oPrix: §c§o200");
		terroristelore1.add("");

		final List <String> terroristelore2 = new ArrayList<String>();
		terroristelore2.add("");
		terroristelore2.add("§f§nNiveau actuel:§r§f (§c2§f)");
		terroristelore2.add("");
		terroristelore2.add("§fSpeed: §c0.25");
		terroristelore2.add("§fÉpée: §cIron");
		terroristelore2.add("§fStuff: §cMail Protect. I");
		terroristelore2.add("§fEnderpearls: §c15");
		terroristelore2.add("§fGrenades: §c15 (+2/kill)");
		terroristelore2.add("");
		terroristelore2.add("§f§nNiveau suivant:§r§f (§cMAX§f)");
		terroristelore2.add("");
		terroristelore2.add("§fSpeed: §c0.30");
		terroristelore2.add("§fÉpée: §cIron Fire. I");
		terroristelore2.add("§fStuff: §cMail Protect. II");
		terroristelore2.add("§fEnderpearls: §c20");
		terroristelore2.add("§fGrenades: §c20 (+2/kill)");
		terroristelore2.add("");
		terroristelore2.add("§f§oPrix: §c§o250");
		terroristelore2.add("");

		final List <String> terroristelore3 = new ArrayList<String>();
		terroristelore3.add("");
		terroristelore3.add("§f§nNiveau actuel:§r§f (§cMAX§f)");
		terroristelore3.add("");
		terroristelore3.add("§fSpeed: §c0.30");
		terroristelore3.add("§fÉpée: §cIron Fire. I");
		terroristelore3.add("§fStuff: §cMail Protect. II");
		terroristelore3.add("§fEnderpearls: §c20");
		terroristelore3.add("§fGrenades: §c20 (+2/kill)");
		terroristelore3.add("");
		
		final List <String> terroristeloreno = new ArrayList<String>();
		terroristeloreno.add("");
		terroristeloreno.add("§f§nNiveau actuel:§r§f (§cAucun§f)");
		terroristeloreno.add("");
		terroristeloreno.add("§fTu dois d'abord acheter le kit !");
		terroristeloreno.add("");
		terroristeloreno.add("§f§nNiveau suivant:§r§f (§c1§f)");
		terroristeloreno.add("");
		terroristeloreno.add("§fSpeed: §c0.20");
		terroristeloreno.add("§fÉpée: §cStone");
		terroristeloreno.add("§fStuff: §cMail");
		terroristeloreno.add("§fEnderpearls: §c10");
		terroristeloreno.add("§fGrenades: §c10 (+2/kill)");
		terroristeloreno.add("");

		if(plugin.getConfig().getInt(p.getName()+".Kits.defaut.lvl") == 1){
			defautmeta.setLore(defautlore1);
		}else if(plugin.getConfig().getInt(p.getName()+".Kits.defaut.lvl") == 2){
			defautmeta.setLore(defautlore2);
		}else if(plugin.getConfig().getInt(p.getName()+".Kits.defaut.lvl") == 3){
			defautmeta.setLore(defautlore3);
		}

		if(plugin.getConfig().getBoolean(p.getName()+".Kits.flash.buy") == true){
			if(plugin.getConfig().getInt(p.getName()+".Kits.flash.lvl") == 1){
				flashmeta.setLore(flashlore1);
			}else if(plugin.getConfig().getInt(p.getName()+".Kits.flash.lvl") == 2){
				flashmeta.setLore(flashlore2);
			}else if(plugin.getConfig().getInt(p.getName()+".Kits.flash.lvl") == 3){
				flashmeta.setLore(flashlore3);
			}
		}else{
			flashmeta.setLore(flashloreno);
		}

		if(plugin.getConfig().getBoolean(p.getName()+".Kits.freezer.buy") == true){
			if(plugin.getConfig().getInt(p.getName()+".Kits.freezer.lvl") == 1){
				freezermeta.setLore(freezerlore1);
			}else if(plugin.getConfig().getInt(p.getName()+".Kits.freezer.lvl") == 2){
				freezermeta.setLore(freezerlore2);
			}else if(plugin.getConfig().getInt(p.getName()+".Kits.freezer.lvl") == 3){
				freezermeta.setLore(freezerlore3);
			}
		}else{
			freezermeta.setLore(freezerloreno);
		}
		
		if(plugin.getConfig().getBoolean(p.getName()+".Kits.terroriste.buy") == true){
			if(plugin.getConfig().getInt(p.getName()+".Kits.terroriste.lvl") == 1){
				terroristemeta.setLore(terroristelore1);
			}else if(plugin.getConfig().getInt(p.getName()+".Kits.terroriste.lvl") == 2){
				terroristemeta.setLore(terroristelore2);
			}else if(plugin.getConfig().getInt(p.getName()+".Kits.terroriste.lvl") == 3){
				terroristemeta.setLore(terroristelore3);
			}
		}else{
			terroristemeta.setLore(terroristeloreno);
		}
		

		defaut.setItemMeta(defautmeta);
		choixkit.setItem(1, defaut);

		flash.setItemMeta(flashmeta);
		choixkit.setItem(3, flash);

		freezer.setItemMeta(freezermeta);
		choixkit.setItem(5, freezer);
		
		terroriste.setItemMeta(terroristemeta);
		choixkit.setItem(7, terroriste);

		p.openInventory(choixkit);

	}
}
